Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix: Runtime.markPersistent is unsafe #6209

Merged
merged 1 commit into from
Nov 27, 2024
Merged

Conversation

Kha
Copy link
Member

@Kha Kha commented Nov 25, 2024

This PR documents under which conditions Runtime.markPersistent is unsafe and adjusts the elaborator accordingly

@Kha Kha added the changelog-compiler Compiler, runtime, and FFI label Nov 25, 2024
@Kha Kha force-pushed the push-yoomxlrqlouo branch from b5c199c to c38b2b4 Compare November 25, 2024 12:51
@github-actions github-actions bot added the toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN label Nov 25, 2024
leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Nov 25, 2024
leanprover-community-mathlib4-bot added a commit to leanprover-community/mathlib4 that referenced this pull request Nov 25, 2024
leanprover-community-mathlib4-bot added a commit to leanprover-community/batteries that referenced this pull request Nov 25, 2024
leanprover-community-mathlib4-bot added a commit to leanprover-community/mathlib4 that referenced this pull request Nov 25, 2024
@leanprover-community-bot
Copy link
Collaborator

leanprover-community-bot commented Nov 25, 2024

Mathlib CI status (docs):

@leanprover-community-bot leanprover-community-bot added the builds-mathlib CI has verified that Mathlib builds against this PR label Nov 25, 2024
@@ -630,16 +625,24 @@ where
-- definitely resolve eventually
snap.new.resolve <| .ofTyped { diagnostics := .empty : SnapshotLeaf }

let mut infoTree := cmdState.infoState.trees[0]!
let mut infoTree : InfoTree := cmdState.infoState.trees[0]!
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Why do need to provide the type annotation here? Is the goal to improve readability or workaround an elaboration issue?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The latter, filed as #6237

@Kha
Copy link
Member Author

Kha commented Nov 27, 2024

!bench

@leanprover-bot
Copy link
Collaborator

Here are the benchmark results for commit c38b2b4.
There were significant changes against commit 884a9ea:

  Benchmark   Metric       Change
  =========================================
+ big_do      task-clock    -9.0% (-12.5 σ)
+ big_do      wall-clock    -9.0% (-12.6 σ)
+ stdlib      wall-clock    -1.1% (-12.0 σ)

@Kha Kha added this pull request to the merge queue Nov 27, 2024
Merged via the queue into leanprover:master with commit 5f1ff42 Nov 27, 2024
18 checks passed
@Kha Kha deleted the push-yoomxlrqlouo branch November 27, 2024 14:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
builds-mathlib CI has verified that Mathlib builds against this PR changelog-compiler Compiler, runtime, and FFI toolchain-available A toolchain is available for this PR, at leanprover/lean4-pr-releases:pr-release-NNNN
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants